package com.atguigu.gmall.feign.product;

import com.atguigu.gmall.common.result.Result;
import com.atguigu.gmall.model.product.BaseCategoryView;
import com.atguigu.gmall.model.product.SkuInfo;
import com.atguigu.gmall.model.product.SpuSaleAttr;
import com.atguigu.gmall.model.to.BaseCategroysTo;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;

import java.math.BigDecimal;
import java.util.List;

@FeignClient("service-product")
@RequestMapping("/rpc/inner/product")
public interface ProductFeign {

    @GetMapping("/categorys")
    List<BaseCategroysTo> getCategoryAndChildrens();

    @GetMapping("/view/category")
    BaseCategoryView getCategoryView(@RequestParam("category3Id") Long category3Id);

    @GetMapping("/skuInfo/{skuId}")
    SkuInfo getSkuInfo(@PathVariable("skuId") Long skuId);

    @GetMapping("/skuInfoPrice/{skuId}")
    BigDecimal getSkuInfoPrice(@PathVariable("skuId") Long skuId);

    @GetMapping("/getSpuSaleAttr")
    List<SpuSaleAttr> getSpuSaleAttr(@RequestParam("skuId") Long skuId);

    //获取valueJson数据{"115|117":44,"116|118":45}
    @GetMapping("/valueJson/{skuId}")
    String getValueJson(@PathVariable("skuId") Long skuId);
}
